package io.itit.ecp.admin.provide.action.resp;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.itit.grass.common.provide.action.resp.BaseResp;
import io.itit.grass.dict.starter.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;

import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 *
 * @Author：Roy
 * @Description：碳排强度数据响应结果
 * @Date：Create by 2023-11-23 16:28:52
 */
@Data
@ToString
@ApiModel("碳排强度数据响应结果")
public class EmissionIntensityDataResp extends BaseResp implements ISceneInfoResp {

    private static final long serialVersionUID = 1L;

    @JsonFormat(pattern = "yyyy-MM-dd HH:00:00", timezone = "GMT+8")
    @ApiModelProperty("数据日期")
    private Date solidifyDate;

    @ApiModelProperty("项目名称")
    private String projectName;

    @ApiModelProperty("所属场景")
    private String sceneInfoName;

    @ApiModelProperty("楼栋id")
    private String sceneEdificeId;

    @ApiModelProperty("楼层id")
    private String sceneFloorId;

    @ApiModelProperty("空间id")
    private String sceneRoomId;

    @ApiModelProperty("设备名称")
    private String deviceName;

    @ApiModelProperty("设备编码")
    private String deviceCode;

    @ApiModelProperty("读表类型(11:光伏电表,12:储能电表,13:用电电表,21:用水水表,22:消防水表,31:用冷冷表) >> distCode：ecp-admin.meterDevice.readMeterType")
    @Dict(dictCode = "ecp-admin.meterDevice.readMeterType")
    private String readMeterType;

    @ApiModelProperty("读表标识(1:总表,2:分表) >> distCode：ecp-admin.meterDevice.readMeterTag")
    @Dict(dictCode = "ecp-admin.meterDevice.readMeterTag")
    private String readMeterTag;

    @ApiModelProperty("单位")
    private String energyTypeUnit;

    @ApiModelProperty("总计量值")
    private BigDecimal meterValue;

    @ApiModelProperty("碳排碳量(kgCO2)")
    private BigDecimal carbonEmission;

    @ApiModelProperty("减碳量(计算过程)")
    private String carbonEmissionProcess;

    @ApiModelProperty("项目总建筑面积")
    private BigDecimal projectFloorArea;

    @ApiModelProperty("楼栋面积")
    private BigDecimal edificeFloorArea;

    @ApiModelProperty("楼层面积")
    private BigDecimal floorArea;

    @ApiModelProperty("空间面积")
    private BigDecimal area;

}
